When it comes to business, sometimes it is very difficult to find out which people are the best choices for gathering a team, creating a business group for a given marketing campaign, a discussion group or a business partnership, among those in your contacts network and beyond. Specifically, it is often desirable to determine: (1) who is the best fit; (2) in the right place; (3) at the right time. A number of factors can go into such a consideration. Existing systems perform only single element or topic matchmaking. That is, existing systems will identify matches where candidates have one interest in common. Such embodiments fail to provide robust and complete matchmaking. In view of the foregoing, there exists a need for an approach that solves at least one of the deficiencies in the related art.